#!/bin/bash
#
#------------------------------Leggimi---------------------------------------------
#Questo script va eseguito su una macchina collegata ai nodi che compongono
#il testbed in cui sono presenti le chiavi per il collegamento diretto in ssh.
#Tali chiavi sono presenti anche nella cartella in cui questo script è contenuto
#gli altri file presenti sono essenziali per il corretto funzionamento lo script
#prevede in ingresso l'indirizzo IP della macchina su cui è presente l'Aggregate
#Manager. Deve essere inoltre presente nella cartella il file di descrizione
#della topologia di rete generato da Neptune
#-----------------------------------------------------------------------------------

#configurazione dei file di omf nell' Aggregate manager e in tutti i nodi della
#topologiacreazione degli script a partire dalla topologia e crea in uscita du file
#script che vado a modifare i file di configurazione su AGM e sui nodi
xsltproc conf_agm.xsl topology.xml > conf_agm.sh
xsltproc conf_nodo.xsl topology.xml > conf_nodo.sh

#Esecuzione degli script-------------------------------------------------------------
# è ESSENZIALE AVVIARE PRIMA LO SCRIPT PER L'AGM E POI PER I NODI
chmod +x ./conf_agm.sh ./conf_nodo.sh
./conf_agm.sh
./conf_nodo.sh

#File che contiene le query da fare sul database dell'aggregate manager
xsltproc query_db.xsl topology.xml > update_db.sql

#varia l'ultimo campo dell'indizzo ip da variare nella tabella sandbox---------------
sed -i 's/[.][1-9]*[@]/.0/g' update_db.sql

#Accesso in ssh sulla macchina AGM creando la directory query con permessi stabiliti
#copia sulla macchina AGM remota il file.sql generato precedentemente ed aggiorna il
#DB inventory
ssh root@$1 "mkdir query | chmod 777 query"
scp update_db.sql root@$1:/root/query/
ssh root@$1 "mysql inventory < /root/query/update_db.sql"
#Eliminazione della directory creata--------------------------------------------------
ssh root@$1 "rm -r /root/query/"

#Popolamento del database del server xmpp nell' aggregate manager---------------------

xsltproc create_sysnode.xsl topology.xml > create_sysnode.sh
chmod +x ./create_sysnode.sh
./create_sysnode.sh

#Eliminazione dei file di ausilio-----------------------------------------------------
rm conf_agm.sh
rm conf_nodo.sh
rm update_db.sql
rm create_sysnode.sh
#---------Termine dello Script--------------------------------------------------------
#
